/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package controle;

/**
 *
 * @author Taeko
 */
public class SinalAleatorio extends SinalAbstrato{

    double superior;
    double inferior;
    
    public SinalAleatorio(double limSuperior, double limInferior){
        super(0, 0, 0);
        this.periodo = periodoAleatorio();
        this.amplitude = amplitudeAleatoria();
        this.offset = 0;
        this.superior = limSuperior;
        this.inferior = limInferior;
    }
    
    @Override
    public double run() {
        double resultado = amplitude;
        
        tempoAtual += temporizador;
        
        if (tempoAtual >= periodo) 
        {
            tempoAtual = tempoAtual - periodo;
            
            periodo = periodoAleatorio();
            amplitude = amplitudeAleatoria();
        }
       
        return resultado;
    }

    private double periodoAleatorio() {
        return Math.random()*100;
    }

    private double amplitudeAleatoria() {
        return Math.random()*3;
    }
    
}
